From: Stephen Wolfe Date: Thu, 29 Mar 2018 19:32:08 +0000 (-0700) Subject: spd: trusty: pass max affinity level to Trusty X-Git-Url: http://git.openwrt.org/%22https:/collectd.org//%22http:/www.crowdsec.net/%22/%22https:/collectd.org/%22http:/www.crowdsec.net/%22?a=commitdiff_plain;h=1ffaaec9ec409c4ab57baeda7772f2f3e2ccf4be;p=project%2Fbcm63xx%2Fatf.git spd: trusty: pass max affinity level to Trusty During System Suspend, the entire system loses its state. To allow Trusty to save/restore its context and allow its TAs to participate in the suspend process, it needs to look at the max affinity level being suspended. This patch passes the max affinity level to Trusty to enable to do so. Change-Id: If7838dae10c3f5a694baedb15ec56fbad41f2b36 Signed-off-by: Varun Wadekar --- diff --git a/services/spd/trusty/trusty.c b/services/spd/trusty/trusty.c index 83c14b49..ce942dd2 100644 --- a/services/spd/trusty/trusty.c +++ b/services/spd/trusty/trusty.c @@ -352,32 +352,32 @@ static void trusty_cpu_resume(uint32_t on) } } -static int32_t trusty_cpu_off_handler(u_register_t unused) +static int32_t trusty_cpu_off_handler(u_register_t max_off_lvl) { - trusty_cpu_suspend(1); + trusty_cpu_suspend(max_off_lvl); return 0; } -static void trusty_cpu_on_finish_handler(u_register_t unused) +static void trusty_cpu_on_finish_handler(u_register_t max_off_lvl) { struct trusty_cpu_ctx *ctx = get_trusty_ctx(); if (ctx->saved_sp == NULL) { (void)trusty_init(); } else { - trusty_cpu_resume(1); + trusty_cpu_resume(max_off_lvl); } } -static void trusty_cpu_suspend_handler(u_register_t unused) +static void trusty_cpu_suspend_handler(u_register_t max_off_lvl) { - trusty_cpu_suspend(0); + trusty_cpu_suspend(max_off_lvl); } -static void trusty_cpu_suspend_finish_handler(u_register_t unused) +static void trusty_cpu_suspend_finish_handler(u_register_t max_off_lvl) { - trusty_cpu_resume(0); + trusty_cpu_resume(max_off_lvl); } static const spd_pm_ops_t trusty_pm = {